package algorithm.sort;

import java.util.Arrays;

/**
 * 插入排序：插入排序的意思是前面是已排序的部分，后面的跟前面的比较，然后插入到适当的位置，那新的数组也是排好序的
 * 每一个数字需要跟已排序的部分比较，按照 n - 1, n - 2, n - 3 ...这样的顺序
 */
public class InsertSortTest {
    public static void main(String[] args) {
        int[] arr = {6,3,8,2,9,1,4};
        sort(arr);
        System.out.println("arr = " + Arrays.toString(arr));
    }

    public static void sort(int[] arr){
        for(int i = 1; i < arr.length; i++){
            for(int j = i; j > 0; j--){
                if(arr[j] < arr[j - 1]){
                    int temp = arr[j];
                    arr[j] = arr[j - 1];
                    arr[j - 1] = temp;
                }else{
                    break;
                }
            }
        }
    }
}
